Batch-scheduling Data Flow Graphs with Service-level Objectives on Multicore Systems
نویسندگان
چکیده
Data flow graphs are a popular program representation in machine learning, big data analytics, signal processing, and, increasingly, networking, where graph nodes correspond to processing primitives and edges describe control flow. To improve CPU cache locality exploit data-level parallelism, usually process batches. Batchy is scheduler for based packet engines, which uses controlled queuing reconstruct fragmented batches inside accordance with strict Service-Level Objectives (SLOs). Earlier work showed that yields up 10x performance improvement real-life use cases, thanks maximally exploiting batch gains. Batchy, however, fundamentally restricted single-threaded execution. In this paper, we generalize parallel execution on multiple cores. We extend the analytical model setting present primal decomposition framework, each core runs an unmodified controller schedule batch-processing subset of graph, orchestrated by master distributes delay-SLOs across cores using subgradient search. Evaluations real software switch provide experimental evidence our framework produces 2.5x while accurately satisfying delay SLOs otherwise not feasible single-core Batchy.
منابع مشابه
Online Batch Scheduling for Flow Objectives
Batch scheduling gives a powerful way of increasing the throughput by aggregating multiple homogeneous jobs. It has applications in large scale manufacturing as well as in server scheduling. In batch scheduling, when explained in the setting of server scheduling, the server can process requests of the same type up to a certain number simultaneously. Batch scheduling can be seen as capacitated b...
متن کاملUser-level scheduling on NUMA multicore systems under Linux
The problem of scheduling on multicore systems remains one of the hottest and the most challenging topics in systems research. Introduction of non-uniform memory access (NUMA) multicore architectures further complicates this problem, as on NUMA systems the scheduler needs not only consider the placement of threads on cores, but also the placement of memory. Hardware performance counters and har...
متن کاملRotation Scheduling on Synchronous Data Flow Graphs
Scheduling loops optimally is one of the important steps in parallel processing, since many applications are made up of iterative processes. There are few iterative processes, which can produce or consume more than one unit of data. These processes can be best described using synchronous data flow graphs (SDFG) or multi-rate graphs. A great deal of research has been done to optimize SDFGs using...
متن کاملBatch Scheduling in Flexible Flow Shop
In this paper, the problem of batch scheduling in a flexible flow shop environment is studied. It is assumed that machines in some stages are able to process a number of jobs simultaneously. The applications of this problem can be found in various industries including spring and wire manufacturing and in auto industry. A mixed integer programming formulation of the problem is presented and it i...
متن کاملBatch Scheduling in Flexible Flow Shop
In this paper, the problem of batch scheduling in a flexible flow shop environment is studied. It is assumed that machines in some stages are able to process a number of jobs simultaneously. The applications of this problem can be found in various industries including spring and wire manufacturing and in auto industry. A mixed integer programming formulation of the problem is presented and it i...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Híradástechnika
سال: 2022
ISSN: ['2061-2079', '0018-2028', '2061-2125']
DOI: https://doi.org/10.36244/icj.2022.1.6